Salsa: Combining Constraint Solvers with BDDs for Automatic Invariant Checking
نویسندگان
چکیده
Salsa is an invariant checker for speci cations in SAL (the SCR Abstract Language). To establish a formula as an invariant without any user guidance Salsa carries out an induction proof that utilizes tightly integrated decision procedures, currently a combination of BDD algorithms and a constraint solver for integer linear arithmetic, for discharging the veri cation conditions. The user interface of Salsa is designed to mimic the interfaces of model checkers; i.e., given a formula and a system description, Salsa either establishes the formula as an invariant of the system (but returns no proof) or provides a counterexample. In either case, the algorithm will terminate. Unlike model checkers, Salsa returns a state pair as a counterexample and not an execution sequence. Also, due to the incompleteness of induction, users must validate the counterexamples. The use of induction enables Salsa to combat the state explosion problem that plagues model checkers { it can handle speci cations whose state spaces are too large for model checkers to analyze. Also, unlike general purpose theorem provers, Salsa concentrates on a single task and gains e ciency by employing a set of optimized heuristics.
منابع مشابه
Salsa: Combining Constraint Solvers with BDDs for Automatic Invariant Checking In Proc. Tools and Algorithms for the Construction and Analysis of Systems
Salsa is an invariant checker for speci cations in SAL (the SCR Abstract Language). To establish a formula as an invariant without any user guidance Salsa carries out an induction proof that utilizes tightly integrated decision procedures, currently a combination of BDD algorithms and a constraint solver for integer linear arithmetic, for discharging the veri cation conditions. The user interfa...
متن کاملAnalysis of Agent-Based Systems Using Decision Procedures
In recent years, model checking has emerged as a remarkably eeective technique for the automated analysis of descriptions of hardware systems and communication protocols. To analyze software system descriptions, however, a direct application of model checking rarely succeeds 1, 3], since these descriptions often have huge (often innnite) state spaces which are not amenable to the nite-state met...
متن کاملSat-based Veriication without State Space Traversal
Binary Decision Diagrams (BDDs) have dominated the area of symbolic model checking for the past decade. Recently, the use of satissability (SAT) solvers has emerged as an interesting complement to BDDs. SAT-based methods are capable of coping with some of the systems that BDDs are unable to handle. The most challenging problem that has to be solved in order to adapt standard symbolic model chec...
متن کاملCombining Constraint Solving and Symbolic Model Checking for a Class of Systems with Non-linear Constraints
We extend the conventional BDD-based model checking algorithms to verify systems with non-linear arithmetic constraints. We represent each constraint as a BDD variable, using the information from a constraint solver to prune the BDDs by removing paths that correspond to infeasible constraints. We illustrate our technique with a simple example, which has been analyzed with our prototype implemen...
متن کاملCombining Constraint Solving and Symbolic Model Checking for a Class of a Systems with Non-linear Constraints
We extend the conventional BDD-based model checking algorithms to verify systems with non-linear arithmetic constraints. We represent each constraint as a BDD variable, using the information from a constraint solver to prune the BDDs by removing paths that correspond to infeasible constraints. We illustrate our technique with a simple example, which has been analyzed with our prototype implemen...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2000